package com.guigu.work.entity.vo;

import com.guigu.base.entity.CoreOrg;
import com.guigu.base.entity.dto.TruckDto;
import com.guigu.work.dto.DriverJobDTO;
import com.guigu.work.entity.TransportOrder;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * @ClassName:TaskTransportDetailsVO
 * @Description://TODO
 * @Author:taoLong
 * @Date:2021/11/27:16:19 星期六
 * @email:2391611102@qq.com or 2391611102qq@gmail.com
 */
@Data
public class TaskTransportDetailsVO implements Serializable {
    private static final long serialVersionUID = -4811184609844595815L;
    @ApiModelProperty(value = "id")
    private String id;

    @ApiModelProperty(value = "车次id")
    private String transportTripsId;

    @ApiModelProperty(value = "车次")
    private String transportTripsName;

    @ApiModelProperty(value = "起始机构id")
    private String startAgencyId;

    @ApiModelProperty(value = "起始机构名称")
    private String startAgencyName;


    @ApiModelProperty(value = "目的机构id")
    private String endAgencyId;

    @ApiModelProperty(value = "目的机构名称")
    private String endAgencyName;

    @ApiModelProperty(value = "任务状态，1为待执行（对应 未发车）、2为进行中（对应在途）、3为待确认（保留状态）、4为已完成（对应 已交付）、5为已取消")
    private Integer status;

    @ApiModelProperty(value = "任务分配状态(1未分配2已分配3待人工分配)")
    private Integer assignedStatus;

    @ApiModelProperty(value = "满载状态(1.半载2.满载3.空载)")
    private Integer loadingStatus;

    @ApiModelProperty(value = "车辆id")
    private String truckId;

    @ApiModelProperty(value = "车辆名称")
    private String truckName;

    @ApiModelProperty(value = "提货凭证")
    private String cargoPickUpPicture;

    @ApiModelProperty(value = "货物照片")
    private String cargoPicture;

    @ApiModelProperty(value = "运回单凭证")
    private String transportCertificate;

    @ApiModelProperty(value = "交付货物照片")
    private String deliverPicture;

    @ApiModelProperty(value = "提货纬度值")
    private String deliveryLatitude;

    @ApiModelProperty(value = "提货经度值")
    private String deliveryLongitude;

    @ApiModelProperty(value = "交付纬度值")
    private String deliverLatitude;

    @ApiModelProperty(value = "交付经度值")
    private String deliverLongitude;

    @ApiModelProperty(value = "计划发车时间")
    private Date planDepartureTime;

    @ApiModelProperty(value = "实际发车时间")
    private Date actualDepartureTime;

    @ApiModelProperty(value = "计划到达时间")
    private Date planArrivalTime;

    @ApiModelProperty(value = "实际到达时间")
    private Date actualArrivalTime;

    @ApiModelProperty(value = "计划提货时间")
    private Date planPickUpGoodsTime;

    @ApiModelProperty(value = "实际提货时间")
    private Date actualPickUpGoodsTime;

    @ApiModelProperty(value = "计划交付时间")
    private Date planDeliveryTime;

    @ApiModelProperty(value = "实际交付时间")
    private Date actualDeliveryTime;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "运单详情")
    private List<TransportOrderVO> transportOrderList;

    @ApiModelProperty(value = "车辆信息")
    private TruckDto truckDto;

    @ApiModelProperty(value = "起始机构信息")
    private CoreOrg startAgency;

    @ApiModelProperty(value = "终点机构信息")
    private CoreOrg endAgency;

    @ApiModelProperty(value = "司机工作信息")
    private DriverJobDTO driverJobDTO;

    @ApiModelProperty(value = "司机名称")
    private String DriverName;
}
